Scorpion Vision Software supports Microsoft Kinect device using OpenKinect drivers.
Scorpion driver from Microsoft Kinect enables Scorpion to grab RGB image and 3D point cloud from Microsoft Kinect device.
Prerequisites
- Microsoft Kinect device connected
- OpenKinect drivers installed
- Scorpion Vision Software version 8.1 or higher
- Scorpion driver for Microsoft Kinect deployed
Property page
There is no GUI for Microsoft Kinect properties. Some properties are available via Python.
Demo profile: Basic operation
You can download a demo profile which demonstrates basic operation and
parameter access of a Microsoft Kinect.
Kinect Demo - T1 - Basic operation_001.zip
Camera setup
Each Microsoft Kinect device will produce two cameras in camera list after driver is loaded.
- RGB - produces RGB image from Microsoft Kinect camera
- 3D - produces 3D point cloud from Microsoft Kinect IR camera.
Note. Make sure you tick 3D when configuring image
If device is disconnected and reconnected then Scorpion will need to be restarted.
Properties available from Python
The following named properties can be dynamically accessed with the 'SetProperty' and 'GetProperty' commands:
- 'continuous' - read/write.
Note: the camera's FPS is fixed (~30FPS) therefore the use of
continuous mode must be cautious as it might make application unresponsive
on slower computers (especially if both 3D and RGB mode are used). We suggest using Scopion scheduler to issue Grab commands.
- 'updatestate' - read only. Updates accelerometer and tilt state. Call before reading axle or state values.
- 'xaxle' - read only. Accelerometer x value. This axis is right to left.
- 'yaxle' - read only. Accelerometer y value. This axis is pointing downwards.
- 'zaxle' - read only. Accelerometer z value. This axis is back and forth.
- 'tiltangle' - read only. Angle of tilt in degrees.
- 'tiltstatus' - read only. Status of tilt. Available values:
- 0 - Tilt motor is stopped
- 1 - Tilt motor has reached movement limit
- 4 - Tilt motor is currently moving to new position
- 'isalive' - read only. 0 means that Scorpion driver is not getting any frames from a device during last 5 seconds else result is 1
- 'ledstate' - write only. Sets led to specified state:
- 0 - Turn LED off
- 1 - Turn LED to Green
- 2 - Turn LED to Red
- 3 - Turn LED to Yellow
- 4 - Make LED blink Green
- 6 - Make LED blink Red/Yellow
- 'tiltdegrees' - write only. Set device to certain tilt. 0 degrees means aligned with the horizon. Approximate available tilt is ~30deg up and down.
OpenKinect.org demo appication
You can download an OpenKinect.org demo application. You can use this application to verify that the Microsoft Kinect
device is working properly and the drivers are installed correctly. This application is provided "as is" only for your convinience.
Example 1: Start Continuous grabbing
GetCamera('0').setProperty('continuous', 1)
Example 2: Stop Continuous grabbing
GetCamera('0').setProperty('continuous', 0)
Example 3: Get device tilt angle
cam= GetCamera('0')
cam.getProperty('updatestate')
cam.getProperty('tiltangle')
Example 4: Set LED to red and align with horizon
cam= GetCamera('0')
cam.setProperty('ledstate', 2)
cam.setProperty('tiltdegrees', 0)
Example 5: Detect that device is not streaming anymore.
cam= GetCamera('0')
alive = cam.getProperty('isalive')
if alive != 1:
#handle error
pass
|